home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-08-07 | 5.0 KB | 177 lines | [TEXT/MPS ] |
- (*
- File: Processes.mod
-
- Contains: Process Manager Interfaces.
-
- Version: Technology: System 7.5
- Package: Universal Interfaces 2.0 in “MPW Latest” on ETO #17
-
- Copyright: © 1984-1995 by Apple Computer, Inc.
- All rights reserved.
-
- Bugs?: If you find a problem with this file, use the Apple Bug Reporter
- stack. Include the file and version information (from above)
- in the problem description and send to:
- Internet: apple.bugs.applelink.apple.com
- AppleLink: APPLE.BUGS
-
- *)
-
- (*$TAGS-*)
- (*$CALLING PASCAL*)
- MODULE Processes;
-
- IMPORT SYSTEM, Types, Files, Events;
-
- (* $PUSH*)
- (* $ALIGN MAC68K*)
- (* $LibExport+*)
-
- TYPE
- ProcessSerialNumber* = RECORD
- highLongOfPSN*: LONGINT;
- lowLongOfPSN*: LONGINT;
- END;
-
- ProcessSerialNumberPtr* = POINTER TO ProcessSerialNumber;
-
-
- CONST
- (* Process identifier - Various reserved process serial numbers *)
- kNoProcess* = 0;
- kSystemProcess* = 1;
- kCurrentProcess* = 2;
-
- (* Definition of the parameter block passed to _Launch
- Typedef and flags for launchControlFlags field *)
-
- TYPE
- LaunchFlags* = INTEGER;
-
-
- CONST
- (* Definition of the parameter block passed to _Launch *)
- launchContinue* = $4000;
- launchNoFileFlags* = $0800;
- launchUseMinimum* = $0400;
- launchDontSwitch* = $0200;
- launchAllow24Bit* = $0100;
- launchInhibitDaemon* = $0080;
-
- (* Format for first AppleEvents.AppleEvent to pass to new process. The size of the overall
- buffer variable*: the message body immediately follows the messageLength *)
-
- TYPE
- AppParameters* = RECORD
- theMsgEvent*: Events.EventRecord;
- eventRefCon*: LONGINT;
- messageLength*: LONGINT;
- END;
-
- AppParametersPtr* = POINTER TO AppParameters;
-
- (* Parameter block to _Launch *)
- LaunchParamBlockRec* = RECORD
- reserved1*: LONGINT;
- reserved2*: INTEGER;
- launchBlockID*: INTEGER;
- launchEPBLength*: LONGINT;
- launchFileFlags*: INTEGER;
- launchControlFlags*: LaunchFlags;
- launchAppSpec*: Files.FSSpecPtr;
- launchProcessSN*: ProcessSerialNumber;
- launchPreferredSize*: LONGINT;
- launchMinimumSize*: LONGINT;
- launchAvailableSize*: LONGINT;
- launchAppParameters*: AppParametersPtr;
- END;
-
- LaunchPBPtr* = POINTER TO LaunchParamBlockRec;
-
- (* Set launchBlockID to extendedBlock to specify that extensions exist.
- Set launchEPBLength to extendedBlockLen for compatibility.*)
-
- CONST
- extendedBlock* = $4C43; (* 'LC' *)
- extendedBlockLen* = 32; (* sizeof(LaunchParamBlockRec) - 12 *)
-
- (* Definition of the information block returned by GetProcessInformation *)
- modeDeskAccessory* = $00020000;
- modeMultiLaunch* = $00010000;
- modeNeedSuspendResume* = $00004000;
- modeCanBackground* = $00001000;
- modeDoesActivateOnFGSwitch* = $00000800;
- modeOnlyBackground* = $00000400;
- modeGetFrontClicks* = $00000200;
- modeGetAppDiedMsg* = $00000100;
- mode32BitCompatible* = $00000080;
- modeHighLevelEventAware* = $00000040;
- modeLocalAndRemoteHLEvents* = $00000020;
- modeStationeryAware* = $00000010;
- modeUseTextEditServices* = $00000008;
- modeDisplayManagerAware* = $00000004;
-
- (* Record returned by GetProcessInformation *)
-
- TYPE
- ProcessInfoRec* = RECORD
- processInfoLength*: LONGINT;
- processName*: Types.StringPtr;
- processNumber*: ProcessSerialNumber;
- processType*: LONGINT;
- processSignature*: Types.OSType;
- processMode*: LONGINT;
- processLocation*: Types.Ptr;
- processSize*: LONGINT;
- processFreeMem*: LONGINT;
- processLauncher*: ProcessSerialNumber;
- processLaunchDate*: LONGINT;
- processActiveTime*: LONGINT;
- processAppSpec*: Files.FSSpecPtr;
- END;
-
- ProcessInfoRecPtr* = POINTER TO ProcessInfoRec;
-
-
- PROCEDURE LaunchApplication*(LaunchParams: LaunchPBPtr): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A9F2, $3E80;
- (*$END*)
- PROCEDURE LaunchDeskAccessory*((*CONST*)VAR pFileSpec: Files.FSSpec; pDAName: Types.ConstStr255Param): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $0036, $A88F;
- (*$END*)
- PROCEDURE GetCurrentProcess*(VAR PSN: ProcessSerialNumber): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $0037, $A88F;
- (*$END*)
- PROCEDURE GetFrontProcess*(VAR PSN: ProcessSerialNumber): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $70FF, $2F00, $3F3C, $0039, $A88F;
- (*$END*)
- PROCEDURE GetNextProcess*(VAR PSN: ProcessSerialNumber): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $0038, $A88F;
- (*$END*)
- PROCEDURE GetProcessInformation*((*CONST*)VAR PSN: ProcessSerialNumber; VAR info: ProcessInfoRec): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $003A, $A88F;
- (*$END*)
- PROCEDURE SetFrontProcess*((*CONST*)VAR PSN: ProcessSerialNumber): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $003B, $A88F;
- (*$END*)
- PROCEDURE WakeUpProcess*((*CONST*)VAR PSN: ProcessSerialNumber): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $003C, $A88F;
- (*$END*)
- PROCEDURE SameProcess*((*CONST*)VAR PSN1: ProcessSerialNumber; (*CONST*)VAR PSN2: ProcessSerialNumber; VAR result: BOOLEAN): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $003D, $A88F;
- (*$END*)
-
- (* $ALIGN RESET*)
- (* $POP*)
-
- END Processes.
-